1. Field of the Invention
The present invention relates generally to reader apparatuses, and more particularly to a reader apparatus that reads original material into image data, codes the image data, and stores the coded image data in digital copiers, scanners, and multifunction peripherals (MFPs).
2. Description of the Related Art
In color MFPs, which are multifunction machines having multiple functions such as a copying function, a facsimile function, a printing function, and a scanning function, original material such as a document is read into image data by a scanner, and the read image data are processed into codes, so that an input image is obtained. Japanese Laid-Open Patent Application No. 2005-348170 discloses an image reader as a conventional example of such technology. This image reader obtains necessary data at high speed with a single scan. The image reader reads either a color or a monochrome original material. The image reader outputs RGB multi-level data in the case of a color original material and outputs monochrome binary data in the case of monochrome original material.
First, original material such as a document is read. When reading of the original material ends, the result of ACS (automatic color select) is read out. If it is determined that the read original material is in color, the RGB multi-level data contained in an image memory are used, and binary data are discarded as invalid. On the other hand, if it is determined that the read original material is monochrome, the binary data of K (black) contained in the image memory are selected and used, and the RGB multi-level data are discarded as invalid. This eliminates software processing for conversion from G (green) multi-level data into binary data, thus making it possible to increase processing speed.
A description is given, with reference to FIGS. 1A through 1E, FIGS. 2A through 2E, and FIGS. 3A and 3B, of a conventional image processor.
In the following description, a document is taken as an example of the original material to be read.
FIG. 1A is a functional block diagram of the conventional image processor, which is an MFP.
Referring to FIG. 1A, a reading unit 1 optically reads a document. The document is exposed to lamp light, and the reading unit 1 condenses reflected light from the document onto a light-receiving element such as a CCD (charge-coupled device) mounted on a sensor board unit (SBU) 2 through mirrors and a lens. An image signal is converted into an electrical signal in the light-receiving element and then converted further into a digital signal, and is thereafter output from the SBU 2.
The image signal output from the SBU 2 is transferred to an image processing unit (IPU) 3. The IPU 3 corrects the degradation of the image signal in the scanner system, that is, the degradation of the image signal in the optical system, and the degradation of the image signal caused by its quantization into a digital signal.
The output of the IPU 3 is input to an image data controller (compression/decompression and data interface control: CDIC) 4 that performs compression and decompression and data interface control. The CDIC 4 controls the entire image data transmission between a function device and a data bus, The CDIC 4 transfers image data between the IPU 3 and a parallel bus 10, so that the image data are communicated between a system controller 12 (CPU) and a process controller 22. The system controller 12 controls the entire system.
The data transferred from the IPU 3 to the CDIC 4 are transmitted from the CDIC 4 to an image memory access controller (IMAC) 11 via the parallel bus 10. Based on the control of the system controller 12, the IMAC 11 controls access of image data to a memory (MEM) 14; loads printing data from an external apparatus such as a personal computer through a network 15 such as a LAN or the Internet; and compresses and decompresses image data for effective use of the MEM 14.
The data transmitted to the IMAC 11 are compressed and thereafter stored in the MEM 14. The stored data are read out as required. The read-out data are decompressed back into the original image data, and are returned from the IMAC 11 to the CDIC 4 via the parallel bus 10. After being transferred from the CDIC 4 to the IPU 3, the image data are subjected to image quality processing by the IPU 3 and to pulse control in a video data controller (VDC) 5, so that a reproduced image is formed on transfer paper in an image creating unit 6. Image data are transferred through the parallel bus 10 by the control of the CDIC 4, so that the functions of the MFP are implemented.
In the case of processing multiple jobs such as copier output, scanner output, and printer output in parallel, the right to use the reading unit 1, the image creating unit 6, and the parallel bus 10 is assigned to each job by the control of the system controller 12 and the process controller 22. The process controller 22 controls a flow of image data. The system controller 12 controls the entire system and manages activation of resources. A function of the MFP is selected on an operations panel 16, so that the contents of processing, such as copying or scanning, are determined.
The system controller 12 and the process controller 22 communicate with each other through the parallel bus 10, the CDIC 4, and a serial bus 21, The data format is converted in the CDIC 4 for the data interface between the parallel bus 10 and the serial bus 21. In the scanner function, a document is read by the reading unit 1 and the SBU 2. The read image data of the document are subjected to image quality processing in the IPU 3 so as to be stored in the MEM 14 or a hard disk drive (HDD) 13 through the CDIC 4, the parallel bus 10, and the IMAC 11. The image data of the document are transmitted from the MEM 14 or the HDD 13 to the external personal computer through the network 15 as required.
A RON 17 is a fixed storage unit containing programs and parameters for apparatus control. The serial bus 21 is a common bus for serially transferring data such as image data. A RAM 23 is a memory in which data such as image data are temporarily stored. A ROM 24 is a fixed storage unit containing programs and parameters.
FIG. 1B is a schematic block diagram showing the image processing of the IPU 3. A read image input to the IPU 3 through the SBU 2 is transmitted from an input interface (I/F) 3a to a scanner image processing part 3b. Scanner image processing is performed in order to correct the degradation of the read image signal. Corrections such as shading correction, scanner γ correction, and MTF correction are performed in the scanner image processing. After being corrected, the read image data are transferred to the CDIC 4 through an output interface (I/F) 3c. 
In the case of outputting an image onto transfer paper, the IPU 3 receives image data from the CDIC 4 through an input I/F 3d, and the image data are subjected to area coverage modulation (tone processing) in an image quality processing part 3e. The data subjected to image quality processing are output to the VDC 5 through an output I/F 3f. The area coverage modulation includes density conversion, dithering, and error diffusion, and principally approximates tone with area.
Storing the image data subjected to scanner image processing in the MEM 14 makes it possible to generate and check various reproduced images by changing image quality processing. For example, it is possible to change the air of a reproduced image by changing the density of the reproduced image or changing the number of lines of a dither matrix. At this point, there is no need to re-read the image from the reading unit 1 every time the processing is changed. Once the stored image is read out from the MEM 14, the same data can be processed differently any number of times. Further, in the case of a single unit of a scanner, the scanner image processing and tone processing are performed together on image data, and the image data are output to the CDIC 4, A command control part 3g manages the switching of processing and changes in a processing procedure.
FIG. 1C is a schematic functional block diagram of the CDIC 4. The data subjected to scanner image correction in the IPU 3 are input to an image data input control part 4a of the CDIC 4. The input data are compressed in a data compression part 4b in order to increase their transfer efficiency in the parallel bus 10, and are sent out to the parallel bus 10 through a parallel data I/F 4c. 
The image data input from the parallel bus 10 through the parallel data I/F 4c, which are compressed for bus transfer, are subjected to decompression in a data decompression part 4d. The decompressed image data are transferred to the IPU 3 from an image data output control part 4e. The CDIC 4 performs conversion between parallel data and serial data in a data conversion part 4f. The system controller 12 transfers data to the parallel bus 10, and the process controller 22 transfers data to the serial bus 21. The data conversion is performed for communications between the two controllers 12 and 22.
FIG. 1D is a schematic functional block diagram of the VDC 5. In the VDC 5, additional processing is performed on input image data in accordance with the characteristics of the image creating unit 6. Dot rearrangement due to edge smoothing is performed in an edge smoothing part 5a and pulse control of an image signal for dot formation is performed in a pulse control part 5b. The image data are output to the image creating unit 6. Apart from conversion of image data, the VDC 5 also performs format conversion between parallel data and serial data. Parallel data input through a parallel data I/F 5c and serial data input through a serial data I/F 5d are converted to serial data and parallel data, respectively, in a data conversion part 5e. The VDC 5 alone can support communications between the system controller 12 and the process controller 22.
FIG. 1E is a schematic functional block diagram of the IMAC 11. A parallel data I/F 11a manages input and output of image data through the parallel bus 10. The IMAC 11 is configured to store image data in and read image data from the MEM 14. The IMAC 11 develops code data input from an external apparatus such as a personal computer into image data. The input code data are temporarily stored in a line buffer 11b. The code data stored in the line buffer 11b are developed into image data in a video control part 11e based on a DEVELOP command input from the system controller 12 through a system controller I/F 11d. The developed image data or image data input from the parallel bus 10 through the parallel data I/F 11a are stored in the MEM 14. At this point, the image data to be stored are selected in a data conversion part 11e. Secondary compression of data is performed in a data compression part 11f in order to increase the efficiency of memory use. The image data are stored in the MEN 14 while managing the addresses of the MEM 14 in a memory access control part 11g. In the case of reading out image data stored in the MEM 14, the image data are read out while controlling a reading destination address in the memory access control part 11g, and the read-out image data are decompressed in a data decompression part 11h. The decompressed image data are transferred to the parallel bus 10 through the parallel data I/F 11a. 
Here a description is given of Joint Photographic Experts Group (JPEG) coding. Since JPEG is a standardized general-purpose format, a description of its details is omitted. FIG. 2A is a schematic block diagram for illustrating JPEG coding. First, in step S731, color conversion is performed on RGB image data, so that the red, green, blue (RGB) image data are converted into a luminance signal and color-difference signals of YCbCr format. In step S732, the color-difference signals are reduced by sub-sampling. In step S733, a Discrete Cosine Transform (DCT) is performed on the luminance signal and the color-difference signals. In step S734, the signals are quantized, and in step S736, are subjected to variable length coding. In step S738, these signals have a header added to their head so as to be output as a JPEG code.
FIG. 2B is a diagram showing the contents of JPEG coded data. The JPEG coded data basically have a hierarchical structure of three tiers of an image, a frame, and a scan. Here, FIG. 2B shows a basic base line system. A single image is sandwiched between an SOI code and an EOI code. The meanings of the abbreviations shown in FIG. 2B are as follows:
SOI: Acronym for Start Of Image. A marker indicating the start of an image to be coded.
DP: Acronym for Definition Parameters. Definition parameter groups indicating the parameter groups specifying a quantization table 735 and a Huffman table 737.
EOI: Acronym for End Of Image. A marker indicating the end of the image to be coded.
SOF: Acronym for Start Of Frame. A marker indicating the start of a frame header and is provided at the head of a frame.
SOS: Acronym for Start Of Scan. A marker indicating the start of scan parameters.
Data: Indicates an image data code.
RST0, RST1, etc.: Indicates a resynchronization code.
FIG. 2C is a diagram showing a structure of a frame header. The meanings of the abbreviations shown in FIG. 2C are as follows:
Lf: Indicates the number of bytes of all parameters including Lf.
P: Indicates the number of bits per pixel of an input image. Here, P is assumed to be eight.
Y: Indicates the number of lines of an image. The number of lines ranges from 0 to 65,535.
X: Indicates the number of pixels of one line. The number of pixels ranges from 1 to 65,535.
Nf: Indicates the number of color components in a frame.
CSP: Indicates the parameter groups of components. Indicates a component number, the horizontal sampling ratio of a color component, the vertical sampling ratio of a color component, the number of a quantization table used by a color component, etc.
FIG. 2D is a diagram showing the exterior of a common MFP capable of copying, scanning, and printing on paper of up to A3 size. Further, FIG. 2E is a diagram showing the exterior of a wide multi-function digital copier.
The MFP of FIG. 2D includes the units of an automatic document feeder ADF, an operations board (panel) OPB, a scanner SCR, a printer PTR, a stapler, a finisher with a tray capable of carrying paper on which an image is created, and a paper feed bank. An image data processor (not graphically illustrated) is connected to an external apparatus such as a personal computer through a LAN (Local Area Network). Paper subjected to printing in the printer PTR is ejected onto a paper ejection tray or to the finisher.
Referring to FIG. 2E, the wide MFP includes a document feeder DF, an operations board (panel) OPB, a scanner SCR, and a printer PTR. The wide MFP of FIG. 2E is capable of copying, scanning, and printing on paper of up to A0 size with respect paper of standard size. Further, the wide MFP of FIG. 2E also supports nonstandard-size elongated paper, and is capable of copying, scanning, and printing on paper of up to A0 width (841 mm) and 15 m long. In the MFP for up to A3 size paper shown in FIG. 2D, when an original material such as a document is placed on the automatic document feeder ADF, the size of the document is automatically detected by a sensor provided on the automatic document feeder ADF. In the wide MFP of FIG. 2E, however, the document may be too large in size to be automatically detected by a sensor. Accordingly, a user specifies the size of the document on the operations board OPB in advance or the wide MFP determines the size of the document by the input document size after reading the document. The wide MFP reads elongated documents of various sizes up to 15 m in length. Accordingly, the wide MFP often determines the length of an input document after actually reading the document.
Next, a description is given, with reference to FIGS. 3A and 3B, of a scanning method in the case where the size of a document is specified by a user so that the length of the document is known in advance in the wide MFP. A scanner application codes an image into general-purpose format such as JPEG or a Tagged Image File Format (TIFF). Here, a color image is coded into JPEG format.
FIG. 3A is a diagram showing a flow of image data in the case of performing scanning with the configuration shown in 1A. FIG. 3B is a flowchart showing a processing flow in this case.
Referring to FIGS. 3A and 3B, in step S101, when reading of a document is started, the RGB data of the image of the document read by the reading unit 1 are transmitted to the SBU 2 and the IPU 3 so as to be subjected to scanner correction in the IPU 3, and the RGB data are thereafter transmitted to the CDIC 4, the parallel bus 10, and the IMAC 11 to be stored in the MEM 14 as indicated by path P101 in FIG. 3A. This operation continues until the reading of the document ends.
If it is determined in step S101a that the reading of the document is completed (YES in step S101a), in step S102, the RGB image stored in the MEM 14 is converted into a JPEG code through processing by the system controller 12 as indicated by path P102 in FIG. 3A. JPEG conversion is performed after completion of the reading of the original image in order to establish coordination with the operation in the case where the number of lines is unknown.
If it is determined in step S102a that the JPEG coding is completed (YES in step S102a), in step S103, the JPEG code is stored in the HDD 13 as indicated by path P103 in FIG. 3B. Here, the JPEG code may be transmitted to an external apparatus such as a personal computer (PC) through the network 15.
Next, with reference to FIGS. 4A and 4B, a description is given of a scanning method in the case where the number of lines of an original document cannot be specified in advance, such as in the case of an elongated document.
FIG. 4A is a diagram showing image paths at the time of scanning in the case the number of lines of an original document cannot be specified in advance, such as in the case of an elongated document. FIG. 4B is a flowchart showing a processing flow in this case.
Referring to FIGS. 4A and 4B, in step S201, when reading of a document is started, the RGB data of the image of the document read by the reading unit 1 are transmitted to the SBU 2 and the IPU 3 so as to be subjected to scanner correction in the IPU 3, and the RGB data are thereafter transmitted to the CDIC 4, the parallel bus 10, and the IMAC 11 to be stored in the MEM 14 as indicated by path P201 in FIG. 4A. This operation continues until the reading of the document ends.
If it is determined in step S201a that the reading of the document is completed (YES in step S201a), in step S202, the number of input lines is counted in the CDIC 4, and this information (the counted number of input lines) is read by the process controller 22 as indicated by path P202 in FIG. 4A.
Next, in step S203, this number of lines is transmitted to the system controller 12 as indicated by path P203 in FIG. 4A. Then, in step S204, the RGB image stored in the MEM 14 is converted into a JPEG code through processing by the system controller 12 using the transmitted number of lines as indicated by path P204 in FIG. 4A.
If it is determined in step S204a that the JPEG coding is completed (YES in step S204a), in step S205, the JPEG code is transferred from the MEM 14 to the HDD 13 so as to be stored in the HDD 13 as indicated by path P205.
However, the above-described conventional scanning method of the wide MFP has the following problems.
First, there is a problem in the capacity of the MEM 14. Here, consideration is given to the case of an A0-size document and the case of an elongated document. For comparison, the case of an A3-size document, which is the maximum document size of an A3 MFP, is also shown. The document is read with a resolution of 600 dpi (dot per inch). The document is a color document (RGB) of eight bits per pixel. Since the maximum number of lines of a JPEG code is 65,535, the number of lines of the elongated document is assumed to be 65,535. At a resolution of 600 dpi, 65,535 lines correspond to 2,774 mm. Memory capacity required in each case is as shown in TABLE 1 below.
TABLE 1SIZE (MAINSCANNINGDIRECTION × SUBPIXELREQUIREDSCANNINGNUMBER ×MEMORYDOCUMENTDIRECTION)LINE NUMBERCAPACITYA3297 mm × 420 mm 7,016 × 9,921 199 MBA0841 mm × 1189 mm19,866 × 28,0871596 MB(ABOUT1.6 GB)ELONGATED841 mm × 2774 mm19,866 × 65,5353725 MB(ABOUT3.7 GB)
The memory capacity required for the A3-size document is 199 MB, which is not large. However, the A0-size document and the JPEG-codable elongated document require considerably large memory capacities of about 1.6 GB and 3.7 GB, respectively. The capacity of a memory provided in the controller of the MFP ranges from 378 MB to 2 GB. With the program and data area and work area of the system controller 12 being reserved, the memory capacity usable for the scanner application is approximately 1 GB. This is too small even for the A0-size document, and allows only a document up to as large as about A1 in size, which is the half of A0.
In the case of performing coding, the coding is started after the reading of the document is completed so that the size of the document is determined. A description is given of time for reading the document. The wide MFP is assumed to have a relatively high document reading rate of 100 mm/s, which means reading a wide document 100 mm per second. The document reading rate in each case is shown in TABLE 2 below.
TABLE 2SIZE (MAINSCANNINGDIRECTION × SUBTIME REQUIREDSCANNINGFOR READINGDOCUMENTDIRECTION)DOCUMENTA3297 mm × 420 mm  4.2 sA0841 mm × 1189 mm11.9 sELONGATED841 mm × 2774 mm27.7 s
Next, consideration is given to the rate of coding (compression) by an X86 processor (1 GHz). Letting the compression rate by the X86 processor be, for example, approximately 45 MB/s, the compression time in each case is as shown in TABLE 3 below.
TABLE 3SIZE (MAINSCANNINGDIRECTION × SUBSCANNINGIMAGECOMPRESSIONDOCUMENTDIRECTION)CAPACITYTIMEA3297 mm × 420 mm  199 MB 4.4 sA0841 mm × 1189 mm1596 MB35.5 sELONGATED841 mm × 2774 mm3725 MB82.8 s
Next, a description is given of the productivity of the scanner application. The productivity of the scanner application is defined by SPM (Scan Per Minute), which is the number of sheets read per minute. The time required for coding a sheet of the document is a reading time plus a compression time. Accordingly, the productivity of the scanner application in each case is as shown in TABLE 4 below.
TABLE 4SIZE (MAINSCANNINGREADINGDIRECTION ×TIME +SCANNERSUB SCANNINGCOMPRESSIONPRODUCTIV-DOCUMENTDIRECTION)TIMEITYA3297 mm × 420 mm  8.6 s7.0 SPMA0841 mm × 1189 mm 47.4 s1.3 SPMELONGATED841 mm × 2774 mm110.5 s0.5 SPM
Thus, the productivity per minute is 7.0 SPM in the case of the A3-size document. However, in the case of the A0-size document, the productivity per minute is 1.3 SPM, so that only a little more than one sheet can be read per minute. Further, in the case of the elongated document, the productivity per minute is 0.5 SPM, so that approximately two minutes are required to process one sheet. A user has to wait this much time before completion of reading the document after the document is set, which is extremely inconvenient for the user. The above is the case of reading the document at 600 dpi. If the resolution is reduced to 300 dpi, the amount of data is reduced, so that the productivity increases. However, it is necessary to read a document drawn with fine lines, such as a design drawing, with a high quality of 600 dpi. In this case, the above-described problem occurs. In the case of a document whose size is not specified and is unknown, the number of lines is not determined and thus coding of an image cannot be started before completion of reading of the document, thus preventing productivity from increasing.